#pragma once
#include <random>

typedef std::tr1::mt19937 MyEngine;

// Definition for the CIndividual class
class CIndividual
{
public:
	CIndividual(void);
	CIndividual(int , int );
	~CIndividual(void);
	void CalculateFitness(int );
	void MakeGamete(MyEngine Engine);
	void PrintGamete(void);
	void PrintGenotype(void);
	void PrintFitness(void);
private:
	int m_NumLoci;
	int m_FitnessFunction;
	double m_Fitness;
	int *m_Genotype1;
	int *m_Genotype2;
	int *m_Gamete;
};
